package cn.backpackerxl.easyJDBC.main;

import cn.backpackerxl.easyJDBC.util.PageBean;

import java.util.List;


/**
 * @author: backpackerxl
 * @create: 2022/2/21
 * @filename: EasyJDBCRef
 **/
public interface EasyJDBCRef<E> {
    int save(E e);

    void saveBatch(List<E> data);

    int update(E e);

    int remove(Long id);

    E findById(Long id);

    List<E> findAll();

    E findByOneAndOther(String one, String other);

    List<E> findByOneOrOther(String one, String other);

    List<E> findByOne(String one);

    PageBean<E> pageEntityAll(int pageSize, int currentPage);

    List<E> search(String key);

    PageBean<E> search(String key, int pageSize, int currentPage);

    List<E> findByQuery(Object... args);

    List<E> findByQuery(SQLFragment sqlFragment, Object... args);
}
